Раздел: Языковые конструкции и приемы программирования

Первый уровень сложности

1. Кортежи.
* Ответ (Лекция 1): Неизменяемая последовательность элементов, заключенных в круглые скобки ().
* Свойства:
* Упорядочены.
* Элементы могут быть разных типов.
* Нельзя изменять после создания (нельзя добавить, удалить, изменить элементы).
* Примеры:

    t = (1, "hello", 3.14)

2. Буфер обмена.
* Ответ (Лекция 1): Механизм, используемый для обмена значениями между переменными.
* Суть: Временная переменная (buf) используется для временного хранения значения, чтобы избежать потери данных при обмене.
* Пример (Лекция 1):

    x = 3
    y = 5
    buf = x  # Буфер
    x = y
    y = buf

3. Рекуррентные формулы.
* Ответ (Лекция 1): Формулы, определяющие каждый член последовательности через предыдущие.
* Примеры:
* a_n = a_{n-1} + n (суммирование натуральных чисел)
* f_n = f_{n-1} + f_{n-2} (числа Фибоначчи)
* x, y, z = x+y, x*y, x**y (Пример из лекции, перенос данных, модификация).

4. Однострочник для условий.
* Ответ (Лекция 2): Компактная форма записи условного выражения if/else в одну строку.
* Синтаксис: значение_если_true if условие else значение_если_false
* Пример (Лекция 2):

    a = -5
    print("положительное или ноль" if a >= 0 else "отрицательное")

5. Однострочник для циклов (списочное включение).
* Ответ (Лекция 1): Способ создания списков (или других коллекций) в одну строку, заменяющий цикл for.
* Синтаксис: [выражение for элемент in итерируемый_объект]
* Пример (Лекция 1):

    sq = [x**2 for x in range(10)] # список квадратов чисел от 0 до 9

6. Однострочник для циклов с условием (списочное включение).
* Ответ (Лекция 1): Расширение списочного включения с условием (if) для фильтрации элементов.
* Синтаксис: [выражение for элемент in итерируемый_объект if условие]
* Пример (Лекция 1):

    even_sq = [x**2 for x in range(10) if x % 2 == 0] # квадраты четных чисел

7. Что такое список?
* Ответ (Лекция 1): Упорядоченная, изменяемая последовательность элементов.
* Свойства:
* Элементы могут быть разных типов.
* Можно добавлять, удалять и изменять элементы.
* Используется [] для создания и доступа по индексу.
* Пример:

    my_list = [1, "abc", 3.14]

8. Что такое множество? Операции над множествами.
* Ответ (Лекция 2): Неупорядоченная коллекция уникальных элементов.
* Свойства:
* Элементы не повторяются.
* Неупорядочены (порядок не важен).
* Используются {} для создания.
* Операции:
* | (Объединение): a | b - все элементы из a и b.
* & (Пересечение): a & b - элементы, общие для a и b.
* - (Разность): a - b - элементы из a, которых нет в b.
* ^ (Симметричная разность): a ^ b - элементы, которые есть только в a или только в b.
* Пример (Лекция 2):

    a = {1, 2, 3}
    b = {3, 4, 5}
    print(a & b)  # Выведет {3}

9. Программы с условиями без if и действиями, соединенными and и or.
* Ответ (Лекция 3): Хотя if/else — стандартный способ, можно использовать логические операторы and и or для кратких условных конструкций.
* Как это работает:
* условие and действие: действие выполняется, если условие истинно.
* условие or действие: действие выполняется, если условие ложно.
* Пример (но это не всегда рекомендуется):

    a = 5
    (a > 0) and print("Положительное")

10. Кванторы.
* Ответ (Лекция 13): Логические операторы, которые позволяют проверить свойства для всех или для хотя бы одного элемента коллекции.
* Виды:
* all(iterable): Возвращает True, если все элементы iterable истинны.
* any(iterable): Возвращает True, если хотя бы один элемент iterable истинен.
* Пример (Лекция 1):

    T = [36, 36, 36, 40, 36]
    if (T > 37).all():
        print("Все больны")
    elif (T > 37).any():
        print("Есть больной")

11. Функции библиотеки itertools.
* Ответ (Лекция 2): Библиотека, предоставляющая эффективные итераторы для работы с последовательностями.
* Полезные функции (примеры):
* permutations(iterable, r=None): Генерация всех перестановок элементов.
* product(*iterables, repeat=1): Декартово произведение (комбинация всех элементов из нескольких итерируемых объектов).
* Пример (Лекция 2):

    from itertools import permutations
    for p in permutations("abc", 3):
        print(p)
    from itertools import product
    for p in product("abc", repeat=2):
        print(p)
← Меню